package num18;

/**
 * @author : DuJiabao
 * @Date : 2021/1/24 0:04
 * @Project : sword-finger-offer
 * @File : null.java
 * @Desc :
 */
public class Solution {
    public ListNode deleteNode(ListNode head, int val) {
        ListNode node = new ListNode(0);  // 新建一个头结点,防止第一个值就是要删除的值
        node.next = head;
        ListNode prePoint = node; // 保存前一个结点
        while (head != null) {
            if (head.val == val) {  // 找到要删除的点之后，用它的前一个结点指向它的后一个结点
                prePoint.next = head.next;
                break;
            }
            prePoint = head; // 否则，下一个继续
            head = head.next;
        }
        return node.next;
    }
}
